[Rails4でサイト構築をする]
- Rails環境構築編
- Scaffold利用編
- Bootstrap導入編
- WYSIWYG導入編
- CSV出力機能編
- スクレイピング機能編(nokogiri)
- 非同期処理導入編(delayed_job)
- デプロイ環境構築編(capistrano3)
上記を毎週1つずつ出す予定
Ogawaです。Android生活から4か月ぶりくらいに戻って、Rails4を使ってサイト構築をしたので、その時の作業をまとめて記事にします。
#作ったのは自社のSEO業務を簡略化するWebシステムサイトです。
まずは復習もかねてRVM, Ruby, Railsをインストールするところから始めます。
私はrbenvよりrvmのほうが使い慣れているので、rvm使ってます。
BPSに今後入ってくる人のために、Rails環境の構築から書いています。
[前提環境]
Ubuntu 12.04
RVMのインストールと設定
http://rvm.io/rvm/install
↑を参考にインストールします。Rubyもインストールしちゃいたいので以下のコマンド選択。
curl -sSL https://get.rvm.io | bash -s stable --ruby
[結果]
The program 'curl' is currently not installed. You can install it by typing:
sudo apt-get install curl
エラーがでました。curlをインストールしろと出ているので、インストールします。
sudo apt-get install curl
[結果]
何かエラーが出ました。。。
apt-get updateしろって言っているので、やってやります。
その後、もう一度curlのインストールをします。
今度は成功しました。
curl --vesion
を実行すると結果が出てきます。
[結果]
curl 7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtmp rtsp smtp smtps telnet tftp
Features: GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP
curlがインストールできたので、一番最初のコマンドでrvmをインストールします。
#何回かユーザパスワードの入力を求められます。
rvmのバージョンを確認してみます。その前に環境変数を読み直します。
source .bashrc
rvm --version
[結果]
rvm 1.25.19 (stable)
インストールされたRubyの確認
rvm list
[結果]
=* ruby-2.1.1 [ i686 ]
.bashrcに以下を追記します。
source "$HOME/.rvm/scripts/rvm"
#これをやらないとrvm useとかしたときにエラーになります。
※環境変数の読み直しはもちろんやってください。
チームで作業する場合は環境による差異を少なくするためにRubyのバージョンは統一するので、
指定のRubyが入っていないなんてことはよくあります。
なので、今回は ruby 2.0.0をインストールしてみます。
rvm install 2.0.0
rvm list
[結果]
rvm rubies
ruby-2.0.0-p451 [ i686 ]
=* ruby-2.1.1 [ i686 ]
# => - current
# =* - current && default
# * - default
ruby 2.0.0を使ってみます。
rvm use 2.0.0
2.0.0をデフォルトにする場合は--defaultを付ける。
Gemsetの作成
rvm gemset create tecracho #techrachoはプロジェクト名
Bundlerのインストール
Bundlerがなかったので、Bundlerのインストール
gem install bundler
[結果]
bundle -v
Bundler version 1.5.3
Railsのインストールとプロジェクト作成
Railsのインストール
gem install rails
[結果]
rails -v
Rails 4.0.3
※既にRailsが入っていてバージョンが古い人は
gem update rails
で新しいバージョンが入ります。
Railsプロジェクトの作成
rails new techracho #techrachoはプロジェクト名
.ruby-versionと.ruby-gemsetの作成
プロジェクト変わるごとに、コマンドを打ってRubyのバージョンやGemsetを変えるのは大変なので、
↑の2ファイルをプロジェクトフォルダ直下に作成しておきます。
その2ファイルを作成することで、プロジェクトフォルダに移動したときに自動で指定したRubyバージョンとGemsetになるようにします。
.ruby-version
ruby-2.0.0
.ruby-gemset
techracho
bundle installしてサーバ起動
bundle install
rails server -p 8080 #-pでポート指定
JavaScriptランタイムがないとのことなので、入れてあげる。
Gemfileに以下を追加。
gem 'therubyracer'
再度、コマンドを実行して、起動します。
ブラウザからlocalhost:8080をたたいて「Welcome aboard」と書かれたページが出ていれば成功です。
Unicornのインストールと起動
Gemfileに以下を追加します。
gem 'unicorn'
bundle installして以下を実行
unicorn_rails -p 8080
まとめ
今回は、Railsサーバーを起動するところまでをやりました。
改めてやってみて、思ったのは、意外に時間がかかるな~ってところです。
(主にインストールが)
次回は、Scaffoldを使ってコントローラーとかモデルとか作ってみたいと思います。